package cn.ffcs.uec.staffAndOutStaff.manager;

import java.util.Date;
import java.util.List;
import java.util.Map;

import cn.ffcs.uec.staffAndOutStaff.vo.OutStaffContractInfo;
import cn.ffcs.uec.staffAndOutStaff.vo.OutStaffDropOutListVo;
import cn.ffcs.uec.staffAndOutStaff.vo.OutStaffImportListVo;
import cn.ffcs.uec.staffAndOutStaff.vo.OutStaffSalaryDetail;
import cn.ffcs.uec.staffAndOutStaff.vo.OutStaffTraMsg;
import cn.ffcs.uec.staffAndOutStaff.vo.OutStaffVocQua;
import cn.ffcs.uom.common.vo.PageInfo;

public interface OutStaffImportListManager {

    /**
     * 分页显示
     * 
     * @param outStaffImportListVo
     * @param current
     * @param pageSize
     * @return
     */
    public PageInfo queryPageInfoByOutStaffImportListVo(OutStaffImportListVo outStaffImportListVo, int current,
            int pageSize);

    /**
     * excel清单下载
     * 
     * @param outStaffImportListVo
     * @return
     */
    public List<Map<String, Object>> getOutStaffImportListVoData(OutStaffImportListVo outStaffImportListVo);

    /**
     * 分页显示
     * 
     * @param outStaffContractInfo
     * @param current
     * @param pageSize
     * @return
     */
    public PageInfo queryPageInfoByOutStaffContractInfo(OutStaffContractInfo outStaffContractInfo, int current,
            int pageSize);

    /**
     * 分页显示
     * 
     * @param outStaffContractInfo
     * @return
     */
    public List<Map<String, Object>> getOutStaffContractInfoData(OutStaffContractInfo outStaffContractInfo);

    /**
     * 分页显示
     * 
     * @param outStaffDropOutListVo
     * @param currentPage
     * @param pageSize
     * @param beginDate
     * @param endDate
     * @return
     */
    public PageInfo queryPageInfoByOutStaffDropOutListVo(OutStaffDropOutListVo outStaffDropOutListVo, int currentPage,
            int pageSize, Date beginDate, Date endDate);

    /**
     * excel清单下载
     * 
     * @param outStaffContractInfo
     * @return
     */
    public List<Map<String, Object>> getOutStaffOutStaffDropOutListVoDate(OutStaffDropOutListVo outStaffDropOutListVo,
            Date beginDate, Date endDate);

    /**
     * 分页显示
     * 
     * @param outStaffVocQua
     * @param current
     * @param pageSize
     * @return
     */
    public PageInfo queryPageInfoByOutStaffVocQua(OutStaffVocQua outStaffVocQua, int current, int pageSize);

    /**
     * 分页显示
     * 
     * @param outStaffVocQua
     * @return
     */
    public List<Map<String, Object>> getOutStaffVocQuaData(OutStaffVocQua outStaffVocQua);

    /**
     * 分页显示
     * 
     * @param outStaffTraMsg
     * @param current
     * @param pageSize
     * @return
     */
    public PageInfo queryPageInfoByOutStaffTraMsg(OutStaffTraMsg outStaffTraMsg, int current, int pageSize);

    /**
     * 
     * @param outStaffTraMsg
     * @return
     */
    public List<Map<String, Object>> getOutStaffTraMsgData(OutStaffTraMsg outStaffTraMsg);

    /**
     * 
     * @param outStaffSalaryDetail
     * @param current
     * @param pageSize
     * @return
     */
    public PageInfo queryPageInfoByOutStaffSalaryDetail(OutStaffSalaryDetail outStaffSalaryDetail, int current,
            int pageSize,String year,String month);

    /**
     * 
     * @param outStaffSalaryDetail
     * @return
     */
    public List<Map<String, Object>> getOutStaffSalaryDetailData(OutStaffSalaryDetail outStaffSalaryDetail,String year,String month);
}
